1. The Field of the Invention
This invention relates to systems, methods, and computer program products for displaying and/or interacting with organizational data.
2. Background and Relevant Art
Organizations increasingly use computerized systems to relay various bits of information to members of the organization, and/or customers. This information can take many forms, and often depends on the intended audience. For example, the organization may present products and other basic company information tailored to potential customers, but, with internal employees, the organization may present other types of information related to company management, contact information, work flows, sales or recruiting data, advancements, achievements, or the like. With the proliferation of computerized systems, it is increasingly common for organizations to provide both internal and external information through one or more computer-accessible local or wide-area network portals.
Internal information often takes the form of some directory information about its members or employees. Simple directory listings, however, may be less relevant or efficient than the working relationships various members have with each other. Thus, some directory information involves basic alphabetical name listings, while other directory listings may further comprise some basic search criteria for finding members (e.g., Distributors, Agents, etc.) by department, job title, etc. or relationships with other such members. In other cases, the organization may provide directory listings through an organizational tree, which may be a more natural way to look up information based on the company's structure and/or members' relationships with each other, and/or with other related groups of the same.
For example, some companies, particularly sales-oriented companies, are structured in such a way that one member in a first tier of the organization may have one or more second associates signed up “under” the first member in second tier. Similarly, one or more other third tier sales associates may be signed up “under” one or more of the second associates in a third tier, and so on. Organizations such as these are often best displayed in a directory tree/organizational tree-style layout, which can look like a familial genealogy tree. Such directory or organizational tree-style layouts can be efficient since they convey not only the existence of an associate in the organization, but readily convey the level, placement, and/or responsibilities of the associate in the organization relative to other members. Such level and placement can have a direct impact in terms of types of information that flow to that sales associate, as well as who should be responsible for the associate, of whom the associate is responsible, who should receive what percentage of commissions at what level, and so on.
Unfortunately, conveying this type of directory information to others in the organization can be computationally expensive and inefficient, particularly for large organizations with hundreds or more members, particularly members with widely varying responsibilities. For example, larger organizations tend to maintain such directory information through elaborate databases that store and relate a large amount of information for each member. Maintaining all of this information, much less translating all of this information into a visible directory layout with different organizational tree views based on various permission levels can be computationally expensive not only from the server perspective, but also the client perspective.
Such complex directory representations often involve the display of multiple different pages and even multiple different formats. This often tends to result in the member's client computer system processing an organizational tree that is difficult to use. This difficulty stems at least in part since the client system receives too much information to process, or receives too little information at a time. Such problems can result in the member receiving information that is impertinent or untimely or both.
For example, upon request to access an organizational tree, conventional organizational servers send all of the organizational information to the client system's browser. Upon receipt, the client browser might then use one or more client-side programs or interfaces to load and execute the information for each member of the organization into a visible organizational tree. Although the organizational tree used by the client in this example might have a range of information, the client's use of the information might be significantly hindered due to the slow loading and execution speed. For example, the client system may be encumbered due to the difficulty of retrieving directory information through several interfaces.
This slower execution can come from the fact that the organization might present the organizational tree information using a large amount of client-side instructions, such as database retrieval instructions. Thus, organizations will alternatively provide a small amount of information that can be loaded at once. This is typically done using basic markup languages such as HTML, which have limited or no client-side scripting, but which have minimal capabilities. Organizational trees presented using HTML tend to provide only be limited amounts of information.
For at least these reasons, conventional organizational tree presentations tend to be an all-or-nothing situation, and most organizations opt for organizational trees that tend to have few interactivity features. Such features usually allow the user to do little else than simply identify the members and their placement within a particular organization. If the relevant end-user finds an error in a particular placement in a directory tree, the user may need to send a message to the organization asking for a repair. Similarly, this also means that the end-user is often precluded from viewing the organizational tree in different ways, such as various metrics or status information about other members in the organization beyond basic member names, phone numbers, etc.
Accordingly, there are a number of disadvantages and inefficiencies with the providing of organizational information that can be addressed.